package com.hottop.system.domain;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.hottop.common.annotation.Excel;
import com.hottop.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 【请填写功能名称】对象 comment
 * 
 * @author ruoyi
 * @date 2022-03-02
 */
public class Comment extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /** 昵称 */
    @Excel(name = "昵称")
    private String nickname;

    /** 评分 */
    @Excel(name = "评分")
    private Long rate;

    /** 评论内容 */
    @Excel(name = "评论内容")
    private String content;

    /** 头像(图片路径) */
    @Excel(name = "头像(图片路径)")
    private String avatar;

    /** 站长回复 */
    @Excel(name = "站长回复")
    private Long isAdminComment;

    /** 公开或非公开 */
    @Excel(name = "公开或非公开")
    private Integer isPublished;

    /** 父评论id，-1为根评论 */
    @Excel(name = "父评论id，-1为根评论")
    private Long parentCommentId;

    /** 被回复昵称 */
    @Excel(name = "被回复昵称")
    private String parentCommentNickname;

    /** 如果评论昵称为QQ号，则将昵称和头像置为QQ昵称和QQ头像，并将此字段置为QQ号备份 */
    @Excel(name = "如果评论昵称为QQ号，则将昵称和头像置为QQ昵称和QQ头像，并将此字段置为QQ号备份")
    private String qq;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setNickname(String nickname) 
    {
        this.nickname = nickname;
    }

    public String getNickname() 
    {
        return nickname;
    }
    public void setRate(Long rate) 
    {
        this.rate = rate;
    }

    public Long getRate() 
    {
        return rate;
    }
    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }
    public void setAvatar(String avatar) 
    {
        this.avatar = avatar;
    }

    public String getAvatar() 
    {
        return avatar;
    }
    public void setIsAdminComment(Long isAdminComment) 
    {
        this.isAdminComment = isAdminComment;
    }

    public Long getIsAdminComment() 
    {
        return isAdminComment;
    }
    public void setIsPublished(Integer isPublished) 
    {
        this.isPublished = isPublished;
    }

    public Integer getIsPublished() 
    {
        return isPublished;
    }
    public void setParentCommentId(Long parentCommentId) 
    {
        this.parentCommentId = parentCommentId;
    }

    public Long getParentCommentId() 
    {
        return parentCommentId;
    }
    public void setParentCommentNickname(String parentCommentNickname) 
    {
        this.parentCommentNickname = parentCommentNickname;
    }

    public String getParentCommentNickname() 
    {
        return parentCommentNickname;
    }
    public void setQq(String qq) 
    {
        this.qq = qq;
    }

    public String getQq() 
    {
        return qq;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("nickname", getNickname())
            .append("rate", getRate())
            .append("content", getContent())
            .append("avatar", getAvatar())
            .append("createTime", getCreateTime())
            .append("isAdminComment", getIsAdminComment())
            .append("isPublished", getIsPublished())
            .append("parentCommentId", getParentCommentId())
            .append("parentCommentNickname", getParentCommentNickname())
            .append("qq", getQq())
            .toString();
    }
}
